import request from '@/config/axios'

// 物料清单 VO
export interface BomListPlcVO {
  itemCode: string // 材料品号
  itemName: string // 材料品名
  itemSpecification: string // 材料规格
  itemDesc: string // 材料描述
  drawingNo: string // 材料图号
  mateType: string // 物料类型
  unitName: string // 单位
  mainImage: string // 主图
}

// 物料清单 API
export const BomListPlcApi = {
  // 查询物料清单分页
  getBomListPlcPage: async (params: any) => {
    return await request.get({ url: `/opticore/bom-list-plc/page`, params })
  },

  // 查询物料清单详情
  getBomListPlc: async (id: number) => {
    return await request.get({ url: `/opticore/bom-list-plc/get?id=` + id })
  },

  // 新增物料清单
  createBomListPlc: async (data: BomListPlcVO) => {
    return await request.post({ url: `/opticore/bom-list-plc/create`, data })
  },

  // 修改物料清单
  updateBomListPlc: async (data: BomListPlcVO) => {
    return await request.put({ url: `/opticore/bom-list-plc/update`, data })
  },

  // 删除物料清单
  deleteBomListPlc: async (id: number) => {
    return await request.delete({ url: `/opticore/bom-list-plc/delete?id=` + id })
  },

  // 导出物料清单 Excel
  exportBomListPlc: async (params) => {
    return await request.download({ url: `/opticore/bom-list-plc/export-excel`, params })
  },

  // 根据产品品号获取工艺流程和工序名称列表
  getBomListPlcByItemCode: async (params) => {
    return await request.get({ url: `/opticore/bom-list-plc/getBomListPlc`, params })
  },
  // 获取导入模板
  importBomTemplate: async () => {
    return await request.download({ url: `/opticore/bom-list-plc/get-bom-template` })
  },

  getCoreByItemCode: async (itemCode: string) => {
    return await request.get({ url: `/opticore/bom-list-plc/get-core?itemCode=${itemCode}` })
  }
}
